package cn.tj212.xiaoyin.core.consts.dao;

import cn.tj212.xiaoyin.common.page.TailPage;
import cn.tj212.xiaoyin.core.consts.domain.ConstsClassify;
import cn.tj212.xiaoyin.core.consts.domain.ConstsCollege;

import java.util.List;

public interface ConstsClassifyDao {
    /**
     * 根据id获取
     * @param id
     * @return
     */
    public ConstsClassify getById(Long id);

    public ConstsCollege getByCode(String code);

    public List<ConstsClassify> queryAll();

    /**
     * 根据条件动态获取
     * @param queryEntity
     * @return
     */
    public List<ConstsClassify> queryByCondition(ConstsClassify queryEntity);

    /**
     * 获取总数量
     * @param queryEntity
     * @return
     */
    public Integer getItemsTotalCount(ConstsClassify queryEntity);

    /**
     * 分页获取
     * @param queryEntity
     * @param page
     * @return
     */
    public List<ConstsClassify> queryPage(ConstsClassify queryEntity, TailPage<ConstsClassify> page);

    /**
     * 创建新纪录
     * @param entity
     */
    public void create(ConstsClassify entity);

    /**
     * 选择性创建新纪录
     * @param entity
     */
    public void createSelectivity(ConstsClassify entity);

    /**
     *根据id更新
     **/
    public void update(ConstsClassify entity);

    /**
     *根据id选择性更新自动
     **/
    public void updateSelectivity(ConstsClassify entity);

    /**
     *物理删除
     **/
    public void delete(ConstsClassify entity);

    /**
     *逻辑删除
     **/
    public void deleteLogic(ConstsClassify entity);
}
